pattern modeling